Various web services may perform file searches as a part of a web service. For example, a web service may provide document management services allowing users to search, create, edit and store documents or other types of information in a cloud based server. In some instances, the user may be able to directly search for documents including information within a certain context. In other applications, performing a search may be necessary to perform a document management related service. For example, a user requesting to edit a document may require the system to first search for documents saved in the user's file space in order to identify the specific document. In many instances, the web service may be providing similar document management services for other users, including other users associated with an enterprise. Thus, the web service providing the document management service may store and provide access to a large number of documents not only for the user, but for many others.
The indexing information is used to organize files associated in a user's file space, and the indexing information may be stored in separate files. This may include separate files for the schema (a.k.a. indexing criteria) and for the contents. Whenever information about the user's schema is updated or modified, appropriate changes may be required in the various indexing files associated with that user. Older versions of the schema may be required for backwards compatibility. Maintaining consistency among these indexing files can be processing intensive. As the number of hosted users, files, and schemas increase, there is an increasing need in maintaining an efficient and updated index of the documents.
It is with respect to these and other considerations that the disclosure made herein is presented.